/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package org.rainbow.xml;

import java.io.File;
import java.io.IOException;
import java.util.List;
import javax.swing.text.Document;

/**
 *
 * @author hironaga
 */
abstract class XmlNativeHandler {

    abstract <T> T readObject(File file,String xpath, Class<T> cls)
                                                             throws IOException;

    abstract <T> List<T> readList(File file,String xpath, Class<T> cls)
                                                            throws IOException;

    abstract void writeObject(File file,String xPath, Object obj)
                                                            throws IOException;

    abstract void writeList(File file,String xPath, List<?> list)
                                                            throws IOException;

    abstract void appendObject(File file,String xPath, Object obj)
                                                            throws IOException;

    abstract void appendList(File file,String xPath, List<?> list)
                                                            throws IOException;

    abstract void overwriteObject(File file,String xPath, Object obj)
                                                            throws IOException;


}
